﻿namespace BathroomLocator.Services
{
	using System;
	using System.ServiceModel;
	using System.ServiceModel.Web;

	[ServiceContract]
	public interface ISamplePushUserRegistrationService
	{
		[OperationContract]
		[WebInvoke(Method = "POST",
			UriTemplate = "/register",
			RequestFormat = WebMessageFormat.Xml,
			ResponseFormat = WebMessageFormat.Xml,
			BodyStyle = WebMessageBodyStyle.Bare)]
		string Register(Uri channelUri);

		[OperationContract]
		[WebInvoke(Method = "POST",
			UriTemplate = "/unregister",
			RequestFormat = WebMessageFormat.Xml,
			ResponseFormat = WebMessageFormat.Xml,
			BodyStyle = WebMessageBodyStyle.Bare)]
		string Unregister(Uri channelUri);

		[OperationContract]
		[WebInvoke(Method = "POST",
			UriTemplate = "/updates",
			RequestFormat = WebMessageFormat.Xml,
			ResponseFormat = WebMessageFormat.Xml,
			BodyStyle = WebMessageBodyStyle.Bare)]
		string[] GetUpdates(Uri channelUri);
	}
}
